<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://sdc/2009/07/Deployment/1.0/ContentStructure" targetNamespace="http://sdc/2009/07/Deployment/1.0/ContentStructure" elementFormDefault="qualified">
	<xs:element name="Item" type="ItemType"/>
	<xs:element name="Folder" type="FolderType"/>
	<xs:element name="List" type="ListType"/>
	<xs:element name="Property" type="PropertyType"/>
	<xs:element name="Web" type="WebType"/>
	<xs:element name="WebPart" type="WebPartType"/>
	<xs:element name="Root">
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="WebType">
					<xs:sequence>
						<xs:element name="FileExtensionActions" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="FileExtensionAction" type="xs:string" maxOccurs="unbounded"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="NamedType">
		<xs:attribute name="Title" type="xs:string" use="required"/>
		<xs:attribute name="Path" type="xs:string" use="optional"/>
		<xs:attribute name="Action" type="ActionType" use="required"/>
	</xs:complexType>
	<xs:complexType name="BaseType">
		<xs:complexContent>
			<xs:extension base="NamedType">
				<xs:sequence>
					<xs:element name="Properties" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element ref="Property" maxOccurs="unbounded"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="Permissions" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element ref="Permission" maxOccurs="unbounded"/>
							</xs:sequence>
							<xs:attribute name="RoleInheritance" use="required">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:enumeration value="None"/>
										<xs:enumeration value="Reset"/>
										<xs:enumeration value="Break"/>
										<xs:enumeration value="BreakCopyFromParent"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:attribute>
							<xs:attribute name="ResetRoleInheritance" type="xs:boolean" />
						</xs:complexType>
					</xs:element>
				</xs:sequence>
				<xs:attribute name="Url" use="optional">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:minLength value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ItemType">
		<xs:complexContent>
			<xs:extension base="BaseType">
				<xs:sequence minOccurs="0">
					<xs:element name="File">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="WebParts" minOccurs="0">
									<xs:complexType>
										<xs:sequence>
											<xs:element ref="WebPart" maxOccurs="unbounded"/>
										</xs:sequence>
									</xs:complexType>
								</xs:element>
							</xs:sequence>
							<xs:attribute name="FileAction" type="FileActionType" use="required"/>
							<xs:attribute name="IsDefault" type="xs:boolean" use="optional"/>
							<xs:attribute name="RemoveAllWebParts" type="xs:boolean" use="optional"/>
							<xs:attribute name="OverwriteFileTitleWithItemTitle" type="xs:boolean" use="optional"/>
						</xs:complexType>
					</xs:element>
				</xs:sequence>
				<xs:attribute name="Approve" type="xs:boolean" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="FolderType">
		<xs:complexContent>
			<xs:extension base="BaseType">
				<xs:sequence>
					<xs:element name="BulkImport" type="BulkImportType" minOccurs="0"/>
					<xs:element name="Folders" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element ref="Folder" maxOccurs="unbounded"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="Items" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element ref="Item" maxOccurs="unbounded"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
				</xs:sequence>
				<xs:attribute name="Approve" type="xs:boolean" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ListType">
		<xs:complexContent>
			<xs:extension base="FolderType">
				<xs:sequence>
					<xs:element name="Fields" type="xs:anyType" minOccurs="0"/>
					<xs:element name="ContentTypes" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="ContentType" type="ContentTypeType" maxOccurs="unbounded"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
				</xs:sequence>
        <xs:attribute name="PrimaryKeyFields" type="xs:string" />
        <xs:attribute name="Description" type="xs:string"/>
				<xs:attribute name="FeatureId" type="xs:string"/>
				<xs:attribute name="TemplateId" type="xs:int">
					<xs:annotation>
						<xs:documentation>
100 Generic list
101 Document library
102 Survey
103 Links list
104 Announcements list
105 Contacts list
106 Events list
107 Tasks list
108 Discussion board
109 Picture library
110 Data sources
111 Site template gallery
112 User Information list
113 Web Part gallery
114 List template gallery
115 XML Form library
116 Master pages gallery
117 No-Code Workflows
118 Custom Workflow Process
119 Wiki Page library
120 Custom grid for a list
130 Data Connection library
140 Workflow History
150 Gantt Tasks list
200 Meeting Series list
201 Meeting Agenda list
202 Meeting Attendees list
204 Meeting Decisions list
207 Meeting Objectives list
210 Meeting text box
211 Meeting Things To Bring list
212 Meeting Workspace Pages list
301 Blog Posts list
302 Blog Comments list
303 Blog Categories list
1100 Issue tracking
1200 Administrator tasks list
            </xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attribute name="DocTemplateId" type="xs:int" use="optional">
					<xs:annotation>
						<xs:documentation>100 - None; 
101 - WordDocument; 
102 - SharePoint Designer WebPage; 
103 - Excel Spreadsheet; 
104 PowerPoint Presentation; 
105 - Basic Page; 
106 - WebPart Page; 
130 - DataConnection; 
1000 - Blank</xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attribute name="NoCrawl" type="xs:boolean" use="optional"/>
				<xs:attribute name="EnableModeration" type="xs:boolean" use="optional"/>
				<xs:attribute name="EnableAttachments" type="xs:boolean" use="optional"/>
				<xs:attribute name="EnableFolderCreation" type="xs:boolean" use="optional"/>
				<xs:attribute name="UndoFileCheckout" type="xs:boolean" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="WebType">
		<xs:complexContent>
			<xs:extension base="FolderType">
				<xs:sequence>
					<xs:element name="Webs" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element ref="Web" maxOccurs="unbounded"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="Lists" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element ref="List" maxOccurs="unbounded"/>
							</xs:sequence>
						</xs:complexType>
					</xs:element>
					<xs:element name="Navigation" minOccurs="0">
						<xs:complexType>
							<xs:sequence>
								<xs:element name="NavigationItem" type="NavigationItemType" minOccurs="0" maxOccurs="unbounded"/>
							</xs:sequence>
							<xs:attribute name="IncludePages" type="xs:boolean"/>
							<xs:attribute name="IncludeHeadings" type="xs:boolean"/>
							<xs:attribute name="IncludeSubSites" type="xs:boolean"/>
							<xs:attribute name="IncludeAuthoredLinks" type="xs:boolean"/>
							<xs:attribute name="InheritNavigation" type="xs:boolean" use="optional"/>
							<xs:attribute name="SortMethod" type="NavigationSortMethodType"/>
						</xs:complexType>
					</xs:element>
				</xs:sequence>
				<xs:attribute name="Description" use="optional">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:minLength value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
				<xs:attribute name="Template" use="optional">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:minLength value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
				<xs:attribute name="Lcid" type="xs:unsignedInt" use="optional"/>
				<xs:attribute name="Theme" use="optional">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:minLength value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
				<xs:attribute name="MasterUrl" use="optional">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:minLength value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
				<xs:attribute name="CustomMasterUrl" use="optional">
					<xs:simpleType>
						<xs:restriction base="xs:string">
							<xs:minLength value="1"/>
						</xs:restriction>
					</xs:simpleType>
				</xs:attribute>
				<xs:attribute name="InheritMaster" type="xs:boolean" use="optional"/>
				<xs:attribute name="InheritCustomMaster" type="xs:boolean" use="optional"/>
				<xs:attribute name="ParserEnabled" type="xs:boolean" use="optional"/>
				<xs:attribute name="NoCrawl" type="xs:boolean" use="optional"/>
				<xs:attribute name="AspxPageIndexMode" type="AspxPageIndexModeType" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="WebPartType">
		<xs:complexContent>
			<xs:extension base="NamedType">
				<xs:attribute name="Zone" type="xs:string" use="required"/>
				<xs:attribute name="Order" type="xs:int" use="required"/>
				<xs:attribute name="ImportXml" type="xs:string" use="required"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="PropertyType">
		<xs:attribute name="Name" type="xs:string" use="required"/>
		<xs:attribute name="Value" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="ContentTypeType">
		<xs:attribute name="Id" use="required">
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="IdQualifier" use="optional">
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
					<xs:enumeration value="Id"/>
					<xs:enumeration value="Name"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="Action" type="ActionType" use="required"/>
	</xs:complexType>
	<xs:simpleType name="ActionType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="None"/>
			<xs:enumeration value="Add"/>
			<xs:enumeration value="Replace"/>
			<xs:enumeration value="Delete"/>
			<xs:enumeration value="Move"/>
			<xs:enumeration value="Modify"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="FileActionType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="None"/>
			<xs:enumeration value="CheckIn"/>
			<xs:enumeration value="Publish"/>
			<xs:enumeration value="Approve"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="BulkImportType">
		<xs:attribute name="Path" type="xs:string" use="required"/>
		<xs:attribute name="Action" type="ActionType" use="required"/>
		<xs:attribute name="IgnoreIfPathNotExists" type="xs:boolean" use="optional"/>
	</xs:complexType>
	<xs:simpleType name="AspxPageIndexModeType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="Automatic"/>
			<xs:enumeration value="Always"/>
			<xs:enumeration value="Never"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="NavigationItemType">
		<xs:complexContent>
			<xs:extension base="BaseType">
				<xs:sequence>
					<xs:element name="NavigationItem" type="NavigationItemType" minOccurs="0" maxOccurs="unbounded"/>
				</xs:sequence>
				<xs:attribute name="Id" type="xs:int" use="optional"/>
				<xs:attribute name="Description" type="xs:string" use="optional"/>
				<xs:attribute name="IsInvisible" type="xs:boolean" use="optional"/>
				<xs:attribute name="ParentUrl" type="xs:string" use="optional"/>
				<xs:attribute name="PreviousUrl" type="xs:string" use="optional"/>
				<xs:attribute name="OpenInNewWindow" type="xs:boolean" use="optional"/>
				<xs:attribute name="AddAsFirst" type="xs:boolean" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="NavigationSortMethodType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="Automatically"/>
			<xs:enumeration value="SubSitesManuallyPagesAutomatically"/>
			<xs:enumeration value="Manually"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="PermissionType">
		<xs:attribute name="User" use="required"/>
		<xs:attribute name="Roles" use="required"/>
	</xs:complexType>
	<xs:element name="Permission" type="PermissionType"/>
</xs:schema>
